Conventional navigation systems propose one or more routes to a destination, allow the user to select from the proposed routes and then direct the user along the selected route. Conventional algorithms that are used to identify a route tend to focus on road geometry, identifying a path using major roads such as large streets and freeways, and then direct the user from the user's location to the major road path and then from the part of the major road path nearest the destination to the destination.
However, there may be many reasons why that route is suboptimal for that user. For example, there may be a bottleneck at an artery that could be avoided through a side street that the routing algorithm wouldn't ordinarily select. In another example, the user may prefer a more scenic route, or a route that avoids freeways, or one that avoids left hand turns or one that avoids taking the user through a downtown area.
Identifying the types of routes that would appeal to each user could take countless hours to identify the alternative routes, and would require constant updating, for example as bottlenecks change from one location to the next, making the updated supply of a wide variety of routes that would appeal to different types of users prohibitively expensive to provide.
Because conventional navigation systems can operate over expensive cellular networks, any solution to this problem must use relatively compact amounts of data. It can be further desirable to reduce communication costs, such as may be incurred between a device and a server.
It can also be desirable to name roads and their portions referred to as road segments in a manner that does not require significant change as new roads or segments to existing roads are added. It can be further desirable to communicate a path of ordered contiguous road segments (including nearly contiguous road segments) in a compact manner.
What is needed is a system and method that can provide the user with routes that appeal to that user's needs at the time the route is provided, can change in reaction to changes in road characteristics, and differ from the conventional routes that are road geometry based, while limiting the data transfers required.